package fr.afcepf.al23.qualite.business;

import fr.afcepf.al23.qualite.data.DaoUtilisateurImpl;
import fr.afcepf.al23.qualite.data.IDaoUtilisateur;
import fr.afcepf.al23.qualite.entity.Utilisateur;
import fr.afcepf.al23.qualite.exception.QualiteException;

/**
 * Classe implémentant l'interface IBusinessUtilisateur.
 * @author Stagiaire
 */
public class BusinessUtilisateur implements IBusinessUtilisateur {
    /**
     * Dao de l'utilisateur.
     */
    private static IDaoUtilisateur dao = new DaoUtilisateurImpl();
    /**
     * @return the dao
     */
    public static IDaoUtilisateur getDao() {
        return dao;
    }
    /**
     * @param paramDao the dao to set
     */
    public static void setDao(IDaoUtilisateur paramDao) {
        dao = paramDao;
    }
    @Override
    public Utilisateur enregistrer(Utilisateur paramUtil)
            throws QualiteException {
        if (!dao.verifMail(paramUtil.getMail())) {
            paramUtil = dao.enregistrer(paramUtil);
        } else {
            QualiteException qe = new QualiteException("mail existe");
            qe.setCode(QualiteException.ErrorCode.MAIL_EXISTE);
            throw qe;
        }
        return paramUtil;
    }
}
